package com.neusoft.neuiotms.dcom.service;

import java.util.List;

import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import com.neusoft.bizcore.auth.common.bean.UserBean;
import com.neusoft.bizcore.web.support.Searchable;
import com.neusoft.neuiotms.dcom.dto.KnowledgeDTO;

public interface KnowledgeService {

    List<KnowledgeDTO> index(Searchable searchable);

    Page<KnowledgeDTO> page(Searchable searchable, Pageable pageable);

    KnowledgeDTO create(KnowledgeDTO dto, UserBean user);

    KnowledgeDTO update(final Long id, final KnowledgeDTO dto, final UserBean user);

    KnowledgeDTO detail(final Long id);

    void updateReadingVolume(final Long id);

    void delete(final Long id);

    void deleteMongoFile(String fsId, Long id);

}
